Matthias Clasen [Thu, 4 Feb 2021 05:13:53 +0000 (00:13 -0500)]
listbase: Don't specify the same thing twice
We only need to set EXPLICIT_NOTIFY once.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:11:42 +0000 (00:11 -0500)]
css: Fix border value parsing
This function was not resetting computed as it meant
to because the last loop was never executed.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:09:09 +0000 (00:09 -0500)]
vulkan: Fix image uploading by regions
This code did not make sense; it was incrementing
the wrong variable.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 01:27:55 +0000 (20:27 -0500)]
docs: Mention css drop-shadow filter
We don't support this filter, currently.
Matthias Clasen [Wed, 3 Feb 2021 16:21:23 +0000 (11:21 -0500)]
css: Fix shadow value equal
This function was not doing the right thing.
Once we are doing the right thing and not compare
shadows as unequal, some reftests that inhibit
snapshots for a few frames now hang forever, since
we are no more redrawing unnecessarily. Fix that
with an explicit queue_draw.
Jakub Steiner [Wed, 3 Feb 2021 22:13:24 +0000 (23:13 +0100)]
Adwaita: allow suggested and destructive action buttons in lists
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3643
Matthias Clasen [Wed, 3 Feb 2021 19:16:01 +0000 (14:16 -0500)]
x11: Handle X-specific targets in drops
This code is very similar to the handling for these
targets in the clipboard case.
Fixes: #3642
Matthias Clasen [Tue, 2 Feb 2021 20:22:32 +0000 (15:22 -0500)]
css: Allow transitioning different-size shadows
The code handles it just fine. The length check was
an erronous addition.
Jonas Ådahl [Mon, 1 Feb 2021 10:31:11 +0000 (11:31 +0100)]
gdk/toplevelsize: Remove warnings about exceeding bounds
Sometimes the size will exceed the minimum bounds. For example crazy
applications like the widget factory that contains the world, or when a
user interactively resizes a window to be larger than the monitor the
window is on is.
The former is questionable, but the latter is not, and from here we
can't really see the difference, so just stop complaining.
Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3035
Matthias Clasen [Fri, 29 Jan 2021 15:45:27 +0000 (10:45 -0500)]
Remove a forgotten file
The example series only has 9 steps now. Remove remnants
of step 10.
Matthias Clasen [Mon, 1 Feb 2021 01:22:59 +0000 (20:22 -0500)]
nativedialog: Add more docs
Emphasize that native dialogs aren't widgets, and are not
kept alive by GTK.
Matthias Clasen [Sat, 30 Jan 2021 03:45:21 +0000 (22:45 -0500)]
tests: Disable the textview-margins reftest
It is too flaky to be useful.
Jan Alexander Steffens (heftig) [Mon, 25 Jan 2021 21:43:11 +0000 (22:43 +0100)]
gtkgstsink: Sync texture before handing it to GDK
We need to synchronize when moving the texture between contexts, or we
get glitches with VA-API decoding.
Emmanuele Bassi [Fri, 29 Jan 2021 16:30:19 +0000 (16:30 +0000)]
build: Disable subproject Cairo tests
There's really no point in running them.
Emmanuele Bassi [Thu, 28 Jan 2021 15:42:22 +0000 (15:42 +0000)]
docs: Annotate XML fragments as such
This way we can get syntax highlighting.
Emmanuele Bassi [Thu, 28 Jan 2021 14:54:10 +0000 (14:54 +0000)]
docs: Escape bare tags
Otherwise tools processing the description of GtkWidget will be *very*
confused.
Emmanuele Bassi [Thu, 28 Jan 2021 14:53:39 +0000 (14:53 +0000)]
docs: Use the appropriate syntax for code block language
Emmanuele Bassi [Thu, 28 Jan 2021 14:53:25 +0000 (14:53 +0000)]
docs: Remove stray code block end marker
Timm Bäder [Thu, 28 Jan 2021 11:31:18 +0000 (12:31 +0100)]
shader builder: Improve error output
Timm Bäder [Sun, 24 Jan 2021 04:27:07 +0000 (05:27 +0100)]
node editor: Make help textview monospace
Otherwise the nice markdown tables don't line up.
Sebastian Keller [Thu, 28 Jan 2021 21:31:03 +0000 (22:31 +0100)]
wayland: Signal gtk-shell surface destruction to the server
This adds a "release" destructor for the gtk_surface1 interface which
signals to the server that a surface has been destroyed on the client
side, which the current "destroy" does not do.
Ideally the protocol would have specified a destroy request marked as
destructor to handle this automatically, however this is no longer
possible due to the destroy method being implicitly generated in the
absence of an explicit request in the protocol. Adding a destroy request
marked as destructor now would generate a new destroy method that
unconditionally would send the request to the server, which would break
clients running on servers not supporting that request.
Matthias Clasen [Thu, 28 Jan 2021 04:36:55 +0000 (23:36 -0500)]
Remove vestigial glade support
These files have not been kept up to date, and
glade doesn't work with GTK4 currently.
Matthias Clasen [Thu, 28 Jan 2021 04:28:36 +0000 (23:28 -0500)]
Drop unused logo resource
The inspector no longer sets a window icon.
Matthias Clasen [Wed, 27 Jan 2021 22:01:51 +0000 (17:01 -0500)]
builder-tool: Translate GtkImage:pixbuf
The pixbuf property doesn't exist anymore. It is
commonly set to a path in ui files, so translate it
to the file property.
Matthias Clasen [Wed, 27 Jan 2021 18:50:05 +0000 (13:50 -0500)]
docs: Add gtk_widget_grab_default to migration guide
Point out the replacement for this api.
Matthias Clasen [Wed, 27 Jan 2021 04:43:11 +0000 (23:43 -0500)]
widget: Fix can-focus
Setting can-focus to FALSE on a widget is supposed
to prevent focus from entering the entire subtree.
So when we grab focus directly to a widget, we need
to check the can-focus flag not just of the widget
itself, but all its ancestors.
Fixes: #3610
Jan Alexander Steffens (heftig) [Mon, 25 Jan 2021 21:38:45 +0000 (22:38 +0100)]
gtkgstsink: Use video_frame_free also for the GL path
The video frame needs to stay mapped while the texture is in use.
Avoid using g_memdup because the structure is not supposed to be moved.
Jan Alexander Steffens (heftig) [Mon, 25 Jan 2021 21:39:32 +0000 (22:39 +0100)]
gtkgstsink: Report allocation size even if no pool requested
We can do that so we should.
Matthias Clasen [Tue, 26 Jan 2021 15:40:22 +0000 (10:40 -0500)]
docs: Update border-size docs
GtkCenterLayout respected border-size as well.
Matthias Clasen [Tue, 26 Jan 2021 03:15:56 +0000 (22:15 -0500)]
searchbar: Fix documentation mishap
The css section was inserted between the example
and the sentence referring to it.
Jan Alexander Steffens (heftig) [Mon, 25 Jan 2021 21:33:46 +0000 (22:33 +0100)]
modules: Simplify _gtk_get_module_path
Remove the bizarre loops.
Matthias Clasen [Fri, 22 Jan 2021 18:56:04 +0000 (13:56 -0500)]
Avoid a buffer overrun
We were putting the '\0' behind the end. Oops.
Matthias Clasen [Fri, 22 Jan 2021 16:50:04 +0000 (11:50 -0500)]
testsuite: Fix a leak
asan pointed out that the array tests leak.
Matthias Clasen [Fri, 22 Jan 2021 16:37:20 +0000 (11:37 -0500)]
Avoid a heap-use-after-free
_gtk_gesture_cancel_sequence frees the struct pointed to by data,
so don't write to it afterwards. Found by asan.
Matthias Clasen [Fri, 22 Jan 2021 03:43:33 +0000 (22:43 -0500)]
wayland: Explicitly announce ssd for kwin
Without this, kwin correctly assumes that we are
using client-side decorations. This is a port
of
32ae97f1 from GTK 3.24.
Fixes: #3609
Emmanuele Bassi [Thu, 21 Jan 2021 16:39:22 +0000 (16:39 +0000)]
a11y: Make GtkATContext realization lazier
We only realize the ATContext on the top level, which will create an
GtkAtSpiRoot object and the corresponding GtkAtSpiCache object. Whenever
an AT connects to the accessibility bus, and asks for the various
objects, all the ATContext will be realized on demand.
Emmanuele Bassi [Thu, 21 Jan 2021 16:31:28 +0000 (16:31 +0000)]
a11y: Avoid signal emission during cache population
If we're responding to a request to get all the cached items, there's no
need to emit signals when adding an ATContext to the cache.
Emmanuele Bassi [Wed, 20 Jan 2021 19:10:54 +0000 (19:10 +0000)]
Abort if the shared memory pool cannot be created
If we cannot allocate memory, we cannot create any windowing system
surface. There's no coming back from that.
Fixes: #3607
Matej Urbančič [Sat, 6 Feb 2021 19:41:30 +0000 (19:41 +0000)]
Update Slovenian translation
Marek Černocký [Sat, 6 Feb 2021 08:45:13 +0000 (09:45 +0100)]
Updated Czech translation
Matthias Clasen [Wed, 3 Feb 2021 15:30:14 +0000 (15:30 +0000)]
Merge branch 'uac.meson.4' into 'gtk-4.0'
gtk4-update-icon-cache: Avoid UAC on 32-bit Windows
See merge request GNOME/gtk!3146
Chun-wei Fan [Wed, 3 Feb 2021 02:16:58 +0000 (02:16 +0000)]
gtk4-update-icon-cache: Avoid UAC on 32-bit Windows
As the program executable name has 'update' in its filename,
gtk4-update-icon-cache.exe is considered to be an installer program on 32-bit
Windows [1], which will cause the program to fail to run unless it is running
with elevated privileges (i.e. UAC).
Avoid this situation by embedding a manifest file into the final executable
that tells Windows that this is not a program that requires elevation.
Fixes issue #3632.
[1]: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-vista/
cc709628(v=ws.10)?redirectedfrom=MSDN,
under section "Installer Detection Technology"
Hugo Carvalho [Mon, 1 Feb 2021 16:21:40 +0000 (16:21 +0000)]
Update Portuguese translation
Daniel Mustieles [Mon, 1 Feb 2021 10:13:00 +0000 (10:13 +0000)]
Update Spanish translation
Rafael Fontenelle [Sat, 30 Jan 2021 19:15:43 +0000 (19:15 +0000)]
Update Brazilian Portuguese translation
Rafael Fontenelle [Sat, 30 Jan 2021 16:00:24 +0000 (16:00 +0000)]
Update Brazilian Portuguese translation
Anders Jonsson [Thu, 28 Jan 2021 20:39:06 +0000 (20:39 +0000)]
Update Swedish translation
Marek Černocký [Tue, 26 Jan 2021 15:22:10 +0000 (16:22 +0100)]
Updated Czech translation
Fran Dieguez [Mon, 25 Jan 2021 18:53:02 +0000 (18:53 +0000)]
Update Galician translation
Fran Dieguez [Mon, 25 Jan 2021 18:50:42 +0000 (18:50 +0000)]
Update Galician translation
A S Alam [Sun, 24 Jan 2021 22:52:13 +0000 (22:52 +0000)]
Update Punjabi translation
A S Alam [Sun, 24 Jan 2021 22:42:04 +0000 (22:42 +0000)]
Update Punjabi translation
Efstathios Iosifidis [Sun, 24 Jan 2021 10:17:02 +0000 (10:17 +0000)]
Update Greek translation
Kalev Lember [Tue, 19 Jan 2021 09:46:13 +0000 (10:46 +0100)]
dist: Fix css theme disting after HighContrast-dark changes
Commit
f60d245e327a760a188e8b5a40844f5fe092df43 renamed it from
HighContrast-inverse.css to HighContrast-dark.css.
Kalev Lember [Tue, 19 Jan 2021 09:40:09 +0000 (10:40 +0100)]
Split NEWS for pre-4.0 changes
Similar to commit
87e9f0895b72540172884ff152b0957a39f4ee6d that did the
same for older releases, this commit splits out pre-4.0 changes to
separate NEWS.pre-4.0 file.
Matthias Clasen [Tue, 19 Jan 2021 03:23:57 +0000 (22:23 -0500)]
4.0.2
Matthias Clasen [Tue, 19 Jan 2021 02:09:10 +0000 (02:09 +0000)]
Merge branch 'fix-cell-renderer-toggle' into 'master'
cellrenderertoggle: Fix css node handling
Closes #3599
See merge request GNOME/gtk!3092
Matthias Clasen [Tue, 19 Jan 2021 01:52:59 +0000 (20:52 -0500)]
cellrenderertoggle: Fix css node handling
Commit
cbbbf44dd43ca608709 tried to replace
gtk_style_context_save_named with an explicit
css node to save to, but it failed, and the failure
was showing up as crashes in the inspector.
Fix by Benjamin Otte.
Fixes: #3599
Emmanuele Bassi [Mon, 18 Jan 2021 23:19:00 +0000 (23:19 +0000)]
Merge branch 'cherry-pick-gtk_file_chooser_set_current_name-fix-type' into 'master'
gtk_file_chooser_set_current_name: fix type of name argument
See merge request GNOME/gtk!3091
Thomas Holder [Fri, 5 Jun 2020 10:43:49 +0000 (12:43 +0200)]
gtk_file_chooser_set_current_name: fix type of name argument
The description says UTF-8 string, but the annotation said filename.
Cherry-picked from gtk-3-24
1573ff6803d9c7a41145d21d5fa640ddc493bad2
Matthias Clasen [Mon, 18 Jan 2021 14:40:02 +0000 (14:40 +0000)]
Merge branch 'doap-update' into 'master'
Update the gtk.doap file
See merge request GNOME/gtk!3088
Matthias Clasen [Mon, 18 Jan 2021 14:11:11 +0000 (09:11 -0500)]
Update the gtk.doap file
Add relevant people as maintainers.
Florentina Mușat [Mon, 18 Jan 2021 13:06:18 +0000 (13:06 +0000)]
Update Romanian translation
Chun-wei Fan [Mon, 18 Jan 2021 10:42:37 +0000 (10:42 +0000)]
Merge branch 'win32-remove-layered-windows' into 'master'
GDK/Win32: Remove layered windows usage
See merge request GNOME/gtk!2782
Chun-wei Fan [Thu, 5 Nov 2020 08:24:40 +0000 (16:24 +0800)]
GDK/Win32: Remove layered windows usage
In GTK4, we are now defaulting to the OpenGL renderer with the Cairo renderer
only used as a fallback, so there is no point keeping the code paths that use
layered windows as layered windows do not work well with OpenGL nor Vulkan.
Matthias Clasen [Sun, 17 Jan 2021 17:51:15 +0000 (17:51 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
Closes #3437
See merge request GNOME/gtk!3087
Matthias Clasen [Sun, 17 Jan 2021 16:39:36 +0000 (11:39 -0500)]
aboutdialog: Fix initial focus
When GtkAboutDialog was changed to derive from
GtkWindow, it lost the initial focus handling that
GtkDialog has. Reinstate some of it.
Fixes: #3437
Matthias Clasen [Sun, 17 Jan 2021 15:55:53 +0000 (10:55 -0500)]
inspector: Avoid a critical
Avoid a critical when closing the inspector with the
recorder page open.
Matthias Clasen [Sun, 17 Jan 2021 14:20:13 +0000 (14:20 +0000)]
Merge branch 'wip/baedert/for-master' into 'master'
Wip/baedert/for master
Closes #3593
See merge request GNOME/gtk!3086
Fabio Tomat [Sun, 17 Jan 2021 13:11:25 +0000 (13:11 +0000)]
Update Friulian translation
Piotr Drąg [Sun, 17 Jan 2021 11:38:17 +0000 (12:38 +0100)]
Update Polish translation
Timm Bäder [Sun, 17 Jan 2021 07:12:14 +0000 (08:12 +0100)]
widget: Fix gtk_widget_class_add_binding() argument name
Timm Bäder [Sun, 17 Jan 2021 07:11:42 +0000 (08:11 +0100)]
Add nullable annotations to GtkShortcutFunc
Fixes #3593
Matthias Clasen [Sun, 17 Jan 2021 05:23:22 +0000 (05:23 +0000)]
Merge branch 'surface-scale' into 'master'
Surface scale
Closes #3578
See merge request GNOME/gtk!3085
Timm Bäder [Mon, 11 Jan 2021 20:49:30 +0000 (21:49 +0100)]
gl renderer: Use rect_contains_rect() copy
And this way the contains_rect() inside
rounded_inner_rect_contains_rect() goes from 3.3% to 0.79% in the
fishbowl when rendering the levelbars.
Timm Bäder [Mon, 11 Jan 2021 19:04:15 +0000 (20:04 +0100)]
label: Remove unneeded NULL guards
The pointers passed to GtkWidgetClass::measure cannot be NULL
Timm Bäder [Mon, 11 Jan 2021 18:53:25 +0000 (19:53 +0100)]
label: Refactor get_layout_location
Make this function shorter, the parameters non-nullable and the simple
cases more explicit.
Timm Bäder [Sun, 10 Jan 2021 18:51:27 +0000 (19:51 +0100)]
gl renderer: Don't reset offset when drawing offscreen
Timm Bäder [Sun, 10 Jan 2021 18:21:12 +0000 (19:21 +0100)]
gl renderer: Properly y-flip non-offscreen children of rounded clips
Timm Bäder [Sun, 10 Jan 2021 09:12:08 +0000 (10:12 +0100)]
label: Fix a potential memory leak
This only happens in error cases so not very interesting. Anyway, try to
make scan-build happy.
Timm Bäder [Sat, 9 Jan 2021 14:58:56 +0000 (15:58 +0100)]
builderparser: Save finalizers in a GPtrArray
We get up to 370 of these when starting the widget-factory.
Timm Bäder [Sat, 9 Jan 2021 14:16:13 +0000 (15:16 +0100)]
widget: Shorten get_halign() a bit
Timm Bäder [Sat, 9 Jan 2021 14:07:21 +0000 (15:07 +0100)]
accessible: Fix memory leak if context is unset
Unref the acessible values
Timm Bäder [Wed, 6 Jan 2021 18:23:02 +0000 (19:23 +0100)]
builder: Use a GPtrArray when parsing signals
Timm Bäder [Wed, 6 Jan 2021 18:07:44 +0000 (19:07 +0100)]
builderparser: Keep properties in a GPtrArray
Timm Bäder [Wed, 6 Jan 2021 16:54:31 +0000 (17:54 +0100)]
builderparser: Only allocate subparser stack when needed
Out of the 3.3k possibly_finish_subparser calls when opening the
widget-factory, only 300 need one.
Matthias Clasen [Sat, 16 Jan 2021 20:36:44 +0000 (20:36 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
docs: Add details
See merge request GNOME/gtk!3084
Matthias Clasen [Sat, 16 Jan 2021 20:21:36 +0000 (15:21 -0500)]
x11: Notify on surface scale changes
Emit property notification when the surface scale
changes.
Matthias Clasen [Sat, 16 Jan 2021 20:17:08 +0000 (15:17 -0500)]
wayland: Notify on surface changes
When the width, height or scale of a surface changes,
emit property change notification.
Matthias Clasen [Sat, 16 Jan 2021 20:17:57 +0000 (15:17 -0500)]
native: Listen for scale changes
Connect to change notification for the surface
scale-factor property, and update the widgets
when it changes.
Fixes: #3578
Matthias Clasen [Sat, 16 Jan 2021 20:16:36 +0000 (15:16 -0500)]
surface: Add a scale-factor property
This will allow us to notify when the scale changes.
Matthias Clasen [Sat, 16 Jan 2021 19:45:20 +0000 (14:45 -0500)]
docs: Add details
Explain the difference between GtkPicture and GtkImage,
and when you might want to use which.
Yuri Chornoivan [Sat, 16 Jan 2021 18:44:30 +0000 (18:44 +0000)]
Update Ukrainian translation
Matthias Clasen [Sat, 16 Jan 2021 18:37:58 +0000 (18:37 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
inspector: Add a legend for the layout overlay
See merge request GNOME/gtk!3083
Matthias Clasen [Sat, 16 Jan 2021 17:52:06 +0000 (12:52 -0500)]
docs: Remove a reference to configure events
Those don't exist anymore.
Matthias Clasen [Sat, 16 Jan 2021 17:38:24 +0000 (12:38 -0500)]
inspector: Add a legend for the layout overlay
Colors are more useful if you know what they represent.
Matthias Clasen [Sat, 16 Jan 2021 03:55:22 +0000 (03:55 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
overlaylayout: Set the child type in the class
See merge request GNOME/gtk!3082
Matthias Clasen [Sat, 16 Jan 2021 03:35:11 +0000 (22:35 -0500)]
overlaylayout: Set the child type in the class
We don't need to override create_layout_child here,
and setting the child type has the advantage that
the layout properties are showing up in the inspector.
Matthias Clasen [Sat, 16 Jan 2021 00:19:41 +0000 (00:19 +0000)]
Merge branch 'rtl-margins' into 'master'
Flip margin-start and -end in RTL
Closes #3583
See merge request GNOME/gtk!3081
Matthias Clasen [Fri, 15 Jan 2021 23:42:20 +0000 (18:42 -0500)]
Add a reftest for box flipping
Test that a horizontal box changes the order of its
children in RTL, and that widget margins flip start
and end.
This tests the fix in
d89ff7181941d202d2.